/***************************************************************************
 *   Copyright (C) 2009 by Marian Skvarek   *
 *   skvarek.marian@gmail.com   *
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A TrackICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
 ***************************************************************************/

#ifndef CSCOREVIEW_H_
#define CSCOREVIEW_H_

#include <QGraphicsScene>

class QGraphicsTextItem;

namespace easyscore
{
	namespace core
	{
		class CScore;
		class CTrackView;

		class CScoreView : public QGraphicsScene
		{
				Q_OBJECT
//Members
			protected:
				bool mInitialized;
				CScore *mData;
// 				QGraphicsView *mGraphicsView;
				QGraphicsTextItem *mTitle;

//Accessors
			public:
// 				void setGraphicsView ( QGraphicsView* value ) { mGraphicsView = value; }
// 				QGraphicsView* getGraphicsView() const { return mGraphicsView; }
				QGraphicsTextItem *getTitle() { return mTitle; }

//Constructors & Intialization
			public:
				CScoreView ( CScore *data );
				void initialize();
				
				void clear();
				~CScoreView();
			
//Public methods
			public:
				void refreshLayout();
				void update();
                                void setWidth(int width);
				//void setItemPos(QGraphicsItem *item, int left, int top);
				//void mouseMoveEvent(QGraphicsSceneMouseEvent* mouseEvent);

		}; //class CScoreView
	} //namespace core
} //namespace easyscore

#endif /*CSCOREVIEW_H_*/
